wayland: Sync attributes also when drawing with GL
authorBenjamin Otte <otte@redhat.com>
Tue, 6 Dec 2016 17:01:34 +0000 (18:01 +0100)
committerBenjamin Otte <otte@redhat.com>
Tue, 6 Dec 2016 17:02:11 +0000 (18:02 +0100)
Probably syncing attributes shouldn't happen when drawing in the first
place, but what do I know about Wayland. ¯\_(ツ)_/¯

gdk/wayland/gdkglcontext-wayland.c
gdk/wayland/gdkprivate-wayland.h
gdk/wayland/gdkwindow-wayland.c

index 991273c19c7e29ff46ac57d81715cf85b910576a..f75e2108cc0754529662a8e923a8eecf5df8fd93 100644 (file)
@@ -241,6 +241,8 @@ gdk_wayland_gl_context_end_frame (GdkDrawContext *draw_context,
     }
   else
     eglSwapBuffers (display_wayland->egl_display, egl_surface);
+
+  gdk_wayland_window_sync (window);
 }
 
 static void
index 481bea78cf86baa93ef8131d587bfa375fd94985..8a8baa767946a3a2267c0fb9f219f0fa64a70d30 100644 (file)
@@ -97,6 +97,7 @@ guint      _gdk_wayland_cursor_get_next_image_index (GdkCursor *cursor,
 void       _gdk_wayland_cursor_set_scale (GdkCursor *cursor,
                                           guint      scale);
 
+void       gdk_wayland_window_sync (GdkWindow *window);
 GdkDragProtocol _gdk_wayland_window_get_drag_protocol (GdkWindow *window,
                                                       GdkWindow **target);
 
index ec1123487200b573bfb12309692966af45bbae0c..09387b75105a74fb55cab244f4c5abde1a65e7d4 100644 (file)
@@ -920,6 +920,12 @@ gdk_window_impl_wayland_end_paint (GdkWindow *window)
       impl->pending_commit = TRUE;
     }
 
+  gdk_wayland_window_sync (window);
+}
+
+void
+gdk_wayland_window_sync (GdkWindow *window)
+{
   gdk_wayland_window_sync_margin (window);
   gdk_wayland_window_sync_opaque_region (window);
   gdk_wayland_window_sync_input_region (window);